package com.wpre.vampiremq.common;

/**
 * Created with IntelliJ IDEA.
 * Description:一个回调函数
 * User: LianBao
 * Date: 2025-01-18
 * Time: 16:00
 */

import com.wpre.vampiremq.mqserver.core.BasicProperties;

import java.io.IOException;

/**
 * 函数式接口:
 * 1.是一个接口
 * 2.只能有一个方法
 * 3.还需要加上@FunctionalInterface
 */
@FunctionalInterface
public interface Consumer {
    //投递,每次服务器收到一个消息之后就调用
    //通过这个方法,把消息推送给对应的消费者
    //方法名和参数参考RabbitMQ
    void handleDelivery(String consumerTag, BasicProperties basicProperties, byte[] body) throws IOException;
}
